package com.auth.domain.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.auth.control.model.RoleDto;
import com.auth.domain.module.po.authmanage.Role;
import com.auth.domain.module.vo.authmanage.RoleVO;

import java.util.List;
import java.util.Set;

/**
 * <p>
 * 角色表 服务类
 * </p>
 *
 * @author cyj
 * @since 2020-10-20
 */
public interface IRoleService extends IService<Role> {

    /**
     * Gets by name *
     *
     * @param roleName role name
     * @return the by name
     * @description: 根据角色名查询
     */
    public Role getByName(String roleName);

    RoleVO selectRole(Long id);

    RoleVO deleteRole(Long id);

    RoleVO updateRole(RoleDto roleDto);

    RoleVO saveRole(RoleDto roleDto);

    IPage<RoleVO> getRoles(Page page);

    List<RoleVO> getByIds(Set<Long> roleIds);
}
